#ifndef __IBOUNDENTITY_H__
#define __IBOUNDENTITY_H__

#include "SceneModel/Entity/IEntity.h"
#include "SceneModel/BaseModel/AABBox.h"

namespace GCRE {
	namespace SceneModel {

		class IBoundEntity : public IEntity {
			DECLARE_DYNAMIC( IBoundEntity )

			public:
				const AABBox& GetBoundingBox() const;
				void SetBoundingBox( const AABBox& box );

			protected:
				IBoundEntity();

			private:
				AABBox m_BBox;
		};

		inline const AABBox& IBoundEntity::GetBoundingBox() const { return m_BBox; }
		inline void IBoundEntity::SetBoundingBox( const AABBox& box ) { m_BBox = box; }
	}
}

#endif	//	__IBOUNDENTITY_H__